<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8" /> 
        <title></title>
        <!-- import Vue -->
        <script type="text/javascript" src="../js/vue.js"></script>
    </head>
    <body>
        <div id="root">
            {{msg}}
            <hello></hello>
            <!-- 第三步：编写组件标签 -->
            <xuexiao></xuexiao>
            <hr>
            <xuesheng></xuesheng>
            <xuesheng></xuesheng>
        </div>

        <div id="root2">
            <hello></hello>
        </div>
    </body>
            
    <script type="text/javascript">
        Vue.config.productionTip = false // 阻止vue在启动时生成生产提示。

        // 第一步：创建school 组件
        const school = Vue.extend({
            // el:'#root', // 组件定义时，一定不要写el配置项，因为最终所有的组件都要被一个vm管理，由vm决定服务于那个容器。
            data(){
                return {
                    schoolName:'尚硅谷',
                    address:'北京'
                }
            },
            template:`
                <div>
                    <h2>学校名称：{{schoolName}}</h2>
                    <h2>学校地址：{{address}}</h2>
                    <button @click="showSchoolName">点我提示学校名</button>
                </div>
            `,
            methods:{
                showSchoolName(){
                    alert(this.schoolName)
                }
            }
        })

        // 第二步：创建student 组件
        const student = Vue.extend({
            data(){
                return {
                    schoolName:'尚硅谷1111',
                    studentName:'张三',
                    age:18
                }
            },
            template:`
                <div>
                    <h2>学生姓名：{{studentName}}</h2>
                    <h2>学生年龄：{{age}}</h2>
                </div>
            `
        })

        // 第一步，创建组件
        const hello = Vue.extend({
            data(){
                return {
                    name: '1111'
                }
            },
            template:`
                <div>
                    <h2>hello, {{name}}</h2>
                </div>
            `
        })

        // 第二步，全局注册组件
        Vue.component('hello', hello)

        // 创建 vm
        new Vue({
            el:'#root',
            data:{
                msg:'hello vue'
            },
            // 第二步，注册组件(局部注册)
            components:{
                xuexiao: school,
                xuesheng: student,
            }
        })

        new Vue({
            el:'#root2',
        })
    </script>
</html>